In conventional use, the rotary dial of a telephone handset is used to dial the telephone number of the telephone handset to which a telephone call is to be placed. Telephone handsets can however also be used to access and input data to remote data processing equipment connected to the telephone network. For example, telephone bill payment services allow subscribers to pay bills using conventional telephone handsets. The subscriber can access such a bill payment service by placing a call to the bill payment data processing equipment. A computer generated voice may then for example, ask the subscriber to enter the account and the amount to be paid by dialing the appropriate numbers on the subscriber's rotary dial. The electrical signals produced by the rotary dialing action are received, decoded into the numerical value of the digits dialed and inputted into the bill payment computer which debits the subscriber's account and issues a cheque in favour of the account to be paid. In such applications, it is of course essential that the electrical signals produced by rotary dialing action can be accurately decoded into the numerical value of the digits dialed.
Conventional rotary dial telephones produce pulse trains representing the digits dialed. Under dialing action, the rotary dial contacts are caused to open and close thereby repetitively breaking and making the line current in the telephone subscriber's line. The number of break pulses corresponds numerically to the digit dialed. Rotary handsets typically produce a pulse repetition rate of about 10 pulses per second. The break interval is typically about 60 milliseconds and the make interval about 40 milliseconds.
While it might be supposed that a rotary dial handset would induce square wave current pulses on the telephone line, in practice the dial pulse current is heavily distorted primarily due to line inductance and direct current blocking through central switching equipment. Due to direct current blocking, the square wave current pulses are differentiated producing positive and negative going impulses corresponding to the leading and trailing edge of each square wave current pulse. These impulses are typically followed by damped ringing and appear as bursts of line current activity. In certain instances, the ringing is sufficiently prolonged that adjacent bursts of line current activity are bridged together to form a single long burst. On some rotary phones, the rewind action of the dial and the activation of the speech muting circuit generates noise pulses which can further distort the pulse train. Moreover, some rotary dial telephone handsets do not produce the desired break interval of about 60 milliseconds but instead produce break intervals as short as 20 to 25 milliseconds.
The effect of such distortions is to render it difficult to reliably decode received bursts of line current activity. Prior art pulse detection circuitry typically attempts to reconstitute square wave current pulses produced by the rotary dial contacts from the differentiated pulse train prior to decoding the dialed digits. For example, Canadian Patent No. 930,486 describes the use of a pulse generator to convert a received sequence of dial pulses into more distinct sets of input pulses. However, in cases where the distortion is severe, proper decoding is virtually impossible with conventional systems.
It has been known that the number of bursts of line current activity produced in dialing a given digit varies depending on the telephone handset used. We have discovered that for a given telephone handset, the relationship between the numerical value of the digit dialed and the number of bursts of line current activity produced in dialing such digit is constant, regardless of which digit is dialed and that such relationship can be represented by a simple algorithm. Thus, in accordance with the present invention, the algorithm specific to each dialing telephone is selected and applied to the number of bursts of line activity associated with each digit dialed to decode the numerical value of each digit dialed. This is accomplished by counting the number of bursts of line current produced by the telephone handset connected to the computer in dialing a standard test digit. Based on this count and the known numerical value of the test digit, the conversion algorithm effective to convert the count to the numerical value of the associated digit is selected.
In practice, the standard test digit may conveniently be the first digit dialed by the subscriber immediately prior to dialing other digits representing data to be inputted to the data processing equipment. After selecting the appropriate conversion algorithm based on the system response to the test digit, the conversion algorithm is applied to the number of bursts produced by the same subscriber handset in dialing such other digits representing data to be inputted to the data processing equipment. Thus, the numerical value of each digit dialed is decoded and is available to be inputted to the data processor. In counting the number of bursts of line current associated with each digit dialed, no attempt is made to identify and reject bursts of line current activity resulting from noise spikes produced, for example, by the rewind action of the rotary dial or by the speech muting circuit of the telephone handset. Nor does the present invention attempt to resolve a single burst of line current activity which has been produced by successive dial pulses which have been bridged together due to ringing, into its two constituent pulses. Instead, all bursts associated with the dialing of each digit are counted.
More particularly, in accordance with the present invention there is provided a rotary dial pulse receiver comprising detection means for detecting bursts of line current activity produced by rotary dial action in dialing a sequence of digits including a predetermined test digit at a predetermined location in the sequence of digits dialed, counting means connected to the detection means for providing an output count of the number of detected bursts of line current activity associated with each digit dialed, conversion means connected to the counting means and responsive to the detection of said predetermined test digit for selecting a conversion algorithm effective to convert the output count associated with the predetermined test digit to the numerical value of said predetermined digit dialed and responsive to the detection of other digits in said sequence of digits for applying said conversion algorithm to convert the output count associated with each of said other digits to the numerical value of said other digit dialed.
In accordance with the present invention there is also provided a method of decoding bursts of line current activity produced by rotary dial action in dialing a sequence of digits comprising the steps of counting the number of bursts of line current activity produced by dialing a predetermined test digit at a predetermined location in the sequence of digits dialed, selecting a conversion algorithm effective to convert the number of said bursts of line current activity produced by dialing said predetermined test digit to the numerical value of said predetermined test digit dialed, counting the number of bursts of line current activity produced by dialing each other digit in said sequence of digits, applying said conversion algorithm to convert the number of bursts of line current activity produced by dialing each said other digit in said sequence of digits to the numerical value of each said other digit dialed.